home *** CD-ROM | disk | FTP | other *** search
/ Workbench Add-On / Workbench Add-On - Volume 1.iso / BBS-Archive / Comm / AmiTCP30b2.lha / src / appl / napsaterm / napsaprefs.h < prev    next >
C/C++ Source or Header  |  1994-05-14  |  4KB  |  130 lines

  1. /* $Id: napsaprefs.h,v 3.4 1994/05/14 12:31:55 ppessi Exp $
  2.  * 
  3.  * napsaprefs.h
  4.  *
  5.  * Author: ppessi <Pekka.Pessi@hut.fi>
  6.  *
  7.  * Copyright (c) 1993 Pekka Pessi
  8.  *
  9.  * Created      : Sun Nov  7 09:26:04 1993 ppessi
  10.  * Last modified: Sat May 14 15:30:31 1994 ppessi
  11.  *
  12.  * $Log: napsaprefs.h,v $
  13.  * Revision 3.4  1994/05/14  12:31:55  ppessi
  14.  * Added `service ' option.
  15.  *
  16.  * Revision 3.3  1994/05/11  12:55:54  ppessi
  17.  * Merged changes from Napsaterm 3.5 by R. Knop
  18.  *
  19.  * Revision 3.2  1994/02/25  02:00:48  ppessi
  20.  * Reverted back to S:Napsaprefs preference file
  21.  *
  22.  * Revision 3.1  1994/01/07  22:51:30  ppessi
  23.  * Version 3 beta
  24.  */
  25.  
  26. /* enum for size_gadget */
  27. #define SIZE_NONE 0
  28. #define SIZE_COLUMN 1
  29. #define SIZE_ROW 2
  30.  
  31. /* enum for bell_type */
  32. #define BELL_NONE 0
  33. #define BELL_VISUAL 1
  34. #define BELL_AUDIO 2
  35. #define BELL_BOTH 3
  36. #define BELL_DISPLAY 4
  37.  
  38. /* enum for national mode */
  39. #define NAT_INTER 0        /* Nothing special */
  40. #define NAT_MULTI 1        /* Multiple keymaps */
  41. #define NAT_7BIT  2        /* Use also national character sets */
  42.  
  43. /* Enum and bits for mouse mode */
  44. #define MOUSE_OFF  0
  45. #define MOUSE_DOWN 1
  46. #define MOUSE_UP   2
  47. #define MOUSE_BOTH 3
  48.  
  49. struct napsaprefs {
  50.   char *device;            /* Device name */
  51.   long  unit;            /* Unit number */
  52.   long  dnetwork;        /* Channel number */
  53.   long  bps;            /* Line speed */
  54.   char *service;        /* Service */
  55.   char *logname;        /* Log file name */
  56.   char *title;            /* Base title string ? */
  57.   char *geometry;        /* our geometry */
  58.   char *pubscname;        /* Which screen to use? */
  59.   char *basefont;        /* name for base font */
  60.   char *remotename;        /* our remote name */
  61.   char *remoteterm;        /* remote terminal type */
  62.   char *keymap;            /* default keymap name */
  63.   char  emulation;        /* Used emulation type (VT102/VT52/H19) */
  64.   char  size_gadget;        /* Sizing gadget type */
  65.   char  bell_type;        /* Bell type */
  66.   char  nation;            /* Which national code we are using */
  67.   char  visual;            /* Cursor type */
  68.   char  cursormap;        /* ? */
  69.   char  altismeta;        /* if true, use left alt as meta key */
  70.   char  show_version;        /* if true, print version information? */
  71.   char  wait_to_end;        /* if true, wait a keypress to end */
  72.   char  shared;            /* if true, Open serial in shared mode */
  73.   char  stdio;            /* if true, use standard IO? */
  74.   char  col80;            /* if true, Use 80 columns? */
  75.   char  slow;            /* if true, use slow motion */
  76.   char  invert;            /* if true, Invert screen */
  77.   char  backspace;        /* if true, BS->DEL change? */
  78.   char  delete;            /* if true, DEL->BS change? */
  79.   char  mouse;            /* mouse mode enum */
  80.   char  blink;            /* if true, blink cursor */
  81.   char  national;        /* if true, use 7 bit char set */
  82.   char  pass8;            /* 1 = pass 8th bit, 0 = strip 8th bit */
  83.   char  ctrl8bit;        /* if true, use 8 bit control chars */
  84. /* Added RKNOP 940328 */
  85.   char  applkeypad;             /* if true, keypad sends VT100 keypad codes */
  86. /* End added RKNOP */
  87.   /* These options are set according others */
  88.   char  ansi_LNM;        /* ansi line feed/newline mode */
  89.   char  unlisten;        /* if true, don't try to read (from serial) */
  90. };
  91.  
  92. extern struct napsaprefs np;
  93.  
  94. #define DEFAULTFONT       "napsa"
  95. #define DEFAULTFONTHEIGHT 11 
  96. #define DEFAULTFONTDEF   "napsa/11"
  97.  
  98. char **parseargs(char **argv);
  99. char **parsewbargs(struct WBStartup *);
  100. void perrorparse(char *fmt, ...);
  101.  
  102. #define NUL "\0"
  103.  
  104. /*
  105.  * Setup menu structure
  106.  */
  107. extern struct setup_menu_item {
  108.   short  offset;
  109.   short  choices;
  110.   char  *title;
  111.   char  *texts;
  112.   void (*change_f)(int);
  113. } setup_items[];
  114.  
  115. int changesetup(unsigned int n, int val);
  116. int getsetup(unsigned int n);
  117.  
  118. /*
  119.  * Prototypes for callbacks
  120.  */ 
  121. void change_national(int national);
  122. void change_nation(int which);
  123. void change_cursor(int mode);
  124. void change_invert(int on);
  125. void change_ansi_LNM(int on);   /* added RKNOP 940328 */
  126. void change_mode80(int on);
  127. void change_listen(int un_listen);
  128. void change_sizing(int mode);
  129. void change_bell(int type);
  130.